package cn.invest.merry.module.invest.service.gsbase;

import cn.invest.merry.framework.common.pojo.PageResult;
import cn.invest.merry.module.invest.controller.admin.gsbase.vo.GsBasePageReqVO;
import cn.invest.merry.module.invest.controller.admin.gsbase.vo.GsBaseSaveReqVO;
import cn.invest.merry.module.invest.dal.dataobject.gsbase.GsBaseDO;

import javax.validation.Valid;

/**
 * 公司基本信息 Service 接口
 *
 * @author 芋道源码
 */
public interface GsBaseService {

    /**
     * 创建公司基本信息
     *
     * @param createReqVO 创建信息
     * @return 编号
     */
    String createGsBase(@Valid GsBaseSaveReqVO createReqVO);

    /**
     * 更新公司基本信息
     *
     * @param updateReqVO 更新信息
     */
    void updateGsBase(@Valid GsBaseSaveReqVO updateReqVO);

    /**
     * 删除公司基本信息
     *
     * @param id 编号
     */
    void deleteGsBase(String id);

    /**
     * 获得公司基本信息
     *
     * @param id 编号
     * @return 公司基本信息
     */
    GsBaseDO getGsBase(String id);

    /**
     * 获得公司基本信息分页
     *
     * @param pageReqVO 分页查询
     * @return 公司基本信息分页
     */
    PageResult<GsBaseDO> getGsBasePage(GsBasePageReqVO pageReqVO);

}